﻿using System;
using System.Collections.Generic;

namespace Pay.Service.Cache {
    public interface ICache {
        bool Set(string key, object value, int seconds = 0);
        T GetOrCreate<T>(string cacheKey, Func<T> create, int seconds = int.MaxValue);
        T Get<T>(string key);
        bool Remove(string key);
        void Remove(IEnumerable<string> tags);
        bool RemoveAll();
    }
}
